/* **********************************************************************************
*
* Copyright (c) Microsoft Corporation. All rights reserved.
*
* **********************************************************************************/

using System;
using System.Collections.Generic;
using System.Text;

namespace OfficeOpenXMLInterop
{
    #region Simple Types

    [Serializable]
    public enum ST_TextVertOverflowType
    {
        overflow,
        ellipsis,
        clip,
    }

    [Serializable]
    public enum ST_TextWrappingType
    {
        none,
        square,
    }

    [Serializable]
    public enum ST_TextHorzOverflowType
    {
        overflow,
        clip,
    }

    [Serializable]
    public enum ST_TextVerticalType
    {
        horz,
        vert,
        vert270,
        wordArtVert,
        eaVert,
        mongolianVert,
        wordArtVertRtl,
    }

    [Serializable]
    public enum ST_TextAnchoringType
    {
        t,
        ctr,
        b,
        just,
        dist,
    }

    #endregion

    #region Complex Types

    [Serializable]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = Namespaces.DrawingMLMain)]
    public class CT_TextNormalAutofit
    {
        public CT_TextNormalAutofit()
        {
            this.fontScale = 100000;
            this.lnSpcReduction = 0;
        }

        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(100000)]
        public int fontScale;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0)]
        public int lnSpcReduction;
    }

    [Serializable]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = Namespaces.DrawingMLMain)]
    public class CT_TextNoAutofit
    {
    }

    [Serializable]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = Namespaces.DrawingMLMain)]
    public class CT_TextShapeAutofit
    {
    }

    [Serializable]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = Namespaces.DrawingMLMain)]
    public class CT_TextBodyProperties
    {
        public CT_TextBodyProperties()
        {
            this.upright = false;
        }

        public CT_PresetTextShape prstTxWarp;

        public CT_TextNoAutofit noAutofit;

        public CT_TextNormalAutofit normAutofit;

        public CT_TextShapeAutofit spAutoFit;

        public CT_Scene3D scene3d;

        public CT_Shape3D sp3d;

        public CT_FlatText flatTx;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int rot;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool rotSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool spcFirstLastPara;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool spcFirstLastParaSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ST_TextVertOverflowType vertOverflow;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool vertOverflowSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ST_TextHorzOverflowType horzOverflow;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool horzOverflowSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ST_TextVerticalType vert;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool vertSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ST_TextWrappingType wrap;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool wrapSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int lIns;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool lInsSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int tIns;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool tInsSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int rIns;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool rInsSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int bIns;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool bInsSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int numCol;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool numColSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public int spcCol;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool spcColSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool rtlCol;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool rtlColSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool fromWordArt;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool fromWordArtSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ST_TextAnchoringType anchor;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool anchorSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool anchorCtr;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool anchorCtrSpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool forceAA;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool forceAASpecified;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool upright;

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool compatLnSpc;

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool compatLnSpcSpecified;
    }

    [Serializable]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = Namespaces.DrawingMLMain)]
    public class CT_TextListStyle
    {
        public CT_TextParagraphProperties defPPr;

        public CT_TextParagraphProperties lvl1pPr;

        public CT_TextParagraphProperties lvl2pPr;

        public CT_TextParagraphProperties lvl3pPr;

        public CT_TextParagraphProperties lvl4pPr;

        public CT_TextParagraphProperties lvl5pPr;

        public CT_TextParagraphProperties lvl6pPr;

        public CT_TextParagraphProperties lvl7pPr;

        public CT_TextParagraphProperties lvl8pPr;

        public CT_TextParagraphProperties lvl9pPr;
    }

    #endregion
}
